iT邦幫忙

2026 iThome 鐵人賽

DAY 22
0
Security

從零打造 Wazuh 自動化防禦與威脅狩獵戰情中心系列 第 22 篇

Day 22|不只發出警報:讓 Wazuh 開始自動回應 Active Response

  • 分享至 

  • xImage
  •  

前幾天已經完成 SSH 登入失敗的偵測。

目前整個流程可以做到:

SSH 登入異常
      ↓
Wazuh 偵測
      ↓
Rule 100002
      ↓
產生 Alert
      ↓
Dashboard 顯示事件

這代表 Wazuh 已經可以告訴我:

「這個來源正在進行可疑的 SSH 登入行為。」

但做到這裡,我發現還有一個問題。

知道有人在攻擊,然後呢?

如果每次看到 Alert 之後,都還要人工登入主機、確認來源 IP,再手動進行封鎖,那整個流程仍然相當被動。

所以接下來我要加入 Wazuh 的另一項功能:

Active Response。


1. 什麼是 Active Response?

Active Response 可以讓 Wazuh 在符合指定條件時,自動執行對應的處理動作。

原本的流程是:

偵測事件
   ↓
產生 Alert
   ↓
等待人工處理

加入 Active Response 後,就可以變成:

偵測事件
   ↓
觸發 Rule
   ↓
Active Response
   ↓
執行指定動作

也就是讓系統從:

Detection(偵測)

進一步走向:

Response(回應)


2. 為什麼需要自動回應?

假設今天偵測到 SSH 多次登入失敗。

Wazuh 已經知道:

來源 IP
登入帳號
目標主機
Rule ID

如果最後只是:

Dashboard 跳出 Alert

攻擊來源仍然可能繼續嘗試連線。

因此我希望做到:

SSH 多次登入失敗
        ↓
Rule 100002
        ↓
取得來源 IP
        ↓
Active Response
        ↓
暫時阻擋來源

這樣系統就不只是「看到問題」,而是可以進一步做出反應。


3. Active Response 怎麼知道什麼時候要執行?

這也是前面建立自訂 Rule 很重要的原因。

我已經建立:

Rule ID:100002

因此後面可以把 Active Response 與這條 Rule 連接起來。

概念就是:

SSH Login Failed
      ↓
符合自訂偵測條件
      ↓
Rule 100002
      ↓
Active Response
      ↓
執行封鎖

換句話說,Rule 負責:

什麼時候需要處理?

Active Response 則負責:

觸發之後要做什麼?

兩者的角色並不相同。


4. 這次我要使用 firewall-drop

Wazuh 的 Active Response 可以搭配不同的 Command。

這次 SSH 測試中,我使用的是:

firewall-drop

目的很直接:

當指定的 SSH Rule 被觸發後,暫時阻擋事件來源 IP。

因此我要建立的完整流程是:

Windows
192.168.212.1
      │
      │ SSH Login
      ▼
Ubuntu Agent
192.168.212.128
      │
      ▼
Wazuh
      │
      ▼
Rule 100002
      │
      ▼
Active Response
      │
      ▼
firewall-drop
      │
      ▼
Block Source IP

這也是這次實驗從「偵測」走向「防禦」最重要的一步。


5. 不是永久封鎖

這次實驗我不打算直接永久封鎖來源 IP。

而是設定一段時間後解除封鎖。

概念上就是:

Rule 100002 觸發
      ↓
封鎖來源 IP
      ↓
等待指定時間
      ↓
解除封鎖

這樣做也比較適合實驗環境。

因為如果測試一次就永久封鎖 Windows 攻擊端,後續要重新進行 SSH 測試就會比較麻煩。


6. 接下來才是真正的挑戰

目前概念看起來很簡單:

Rule 100002
      ↓
firewall-drop
      ↓
Block IP

但實際設定時並不是只要打開一個開關就完成。

還需要處理:

執行哪個 Command?
      ↓
在哪裡執行?
      ↓
哪條 Rule 觸發?
      ↓
封鎖多久?

這些都需要在 Wazuh 的設定檔中指定。

而且後面我實際測試時,也遇到了:

Alert 有出現
      ↓
Rule 有成功觸發
      ↓
但是來源 IP 沒有被封鎖

也就是:

偵測成功,不代表 Active Response 一定會成功。

這也成為後面除錯的重要部分。


今日總結

今天開始進入 Wazuh Active Response。

前面的系統主要做到:

Detect
   ↓
Alert

接下來則希望變成:

Detect
   ↓
Alert
   ↓
Respond

我的目標就是把前面建立的:

Rule 100002

與:

firewall-drop

連接起來。

最後希望達成:

SSH 異常
   ↓
自動偵測
   ↓
自動封鎖

firewall-drop 是怎麼封鎖 IP 的?準備 Active Response

下一篇開始進入實作。

先確認 Wazuh 的:

firewall-drop

以及 Active Response Command 的運作方式。

接著準備把:

Rule 100002

正式接到自動封鎖流程上。


上一篇
# Day 21|從 Alert 找出攻擊來源:用 Wazuh Dashboard 進行 Threat Hunting
下一篇
# Day 23|準備自動封鎖:把 SSH Alert 接到 firewall-drop
系列文
從零打造 Wazuh 自動化防禦與威脅狩獵戰情中心 共 23 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言